﻿#define _CRT_SECURE_NO_WARNINGS 1

#include <stdio.h>
#include <string.h>
#include <assert.h>
//int main()
//{
//	unsigned long pulArray[] = { 6,7,8,9,10 };
//	unsigned long* pulPtr;
//	pulPtr = pulArray;
//	*(pulPtr + 3) += 3;
//	printf("%d,%d\n", *pulPtr, *(pulPtr + 3));
//}
//
//int main()
//{
//    int a = 0x11223344;
//    char* pc = (char*)&a;
//    *pc = 0;
//    printf("%x\n", a);
//    return 0;
//}




//字符串逆序
//int main()
//{
//	char arr[10] = "abshfafhk";
//	int len = strlen(arr);
//	printf("%d", len);
//	int i = len - 1;
//	for (i; i >= 0; i--)
//	{
//		printf("%c ", arr[i]);
//	}
//	return 0;
//}

//定义字符串的输入数
//#define N 20
//int main()
//{
//	//初始化字符串
//	char str[N] = "\0";
//	int i, j, num, ch;
//
//	printf("请打印字符串：");
//	//这里不能使用scanf，sacnf只输出一个字符，所以使用gets
//	gets(str);
//
//	num = strlen(str);//获取字符串的长度，由于字符串包括"\0"所以需要减一，才得出真实的字符串长度
//	j = num - 1;
//	i = 0;	
//	//逆序打印
//	while (i < j) {
//		ch = str[i];
//		str[i] = str[j];
//		str[j] = ch;
//		i++;
//		j--;
//	}
//
//	puts(str);
//
//	return 0;
//}



//int my_strlen(const char* str)
//{
//	int count = 0;
//	assert(str != NULL);//断言，指针为空，打印出错误信息
//	while (*str++)//遇到'\0'停止，不算'\0'
//	{
//		count++;
//	}
//	return count;
//}
//int main()
//{
//	int len = 0;
//	char* p = "abcdef";
//	len = my_strlen(p);
//	printf("len=%d\n", len);
//	return 0;
//}

int main()
{
	int arr[10] = { 1,2,3,4,5,6,7,8,9,10};
	int sz = sizeof(arr) / sizeof(arr[0]);
	int* p = arr;
	for (int i = 0; i < sz; i++)
	{
		printf("%d ", *(p + i));
	}
	return 0;
}

//void bub(int arr[], int sz)
//{
//	//趟数
//	int i = 0;
//	for (i = 0; i < sz - 1 - i; i++)
//	{
//		int flag = 0;
//		int j = 0;
//		if (arr[j] > arr[j + 1])
//		{
//			int tmp = arr[j];
//			arr[j] = arr[j + 1];
//			arr[j + 1] = tmp;
//		}
//		if (flag == 1)//这⼀趟没交换就说明已经有序，后续⽆序排序了
//			break;
//	}
//}
//
//int main()
//{
//	int arr[] = { 3,1,7,5,8,9,0,2,4,6 };
//	int sz = sizeof(arr) / sizeof(arr[0]);
//	bub(arr, sz);
//	int i = 0;
//	for (i = 0; i < sz; i++)
//	{
//		printf("%d ", arr[i]);
//	}
//	return 0;
//}

